package com.ourteam.product.requirement.dao;

/**
 * Template Name : DAO数据对象
 * Template Version : 1
 * Template Last Modfiy Date : Fri Aug 18 15:51:23 CST 2017
 * Auto Generate Date : 2018-05-03 16:45:19
  * Warning ! This file will be overwrite when regenerate !
  *
 */
import org.apache.commons.lang.StringUtils;


public class ProductGlossaryRelate implements java.io.Serializable {
    private long id;

    /**
     * Attribute id Be Seted Falg
     */
    private boolean idSetted = false;

    /**
    * Attribute id is Null Falg
    */
    private boolean idNull = false;
    private long productDefineId;

    /**
     * Attribute productDefineId Be Seted Falg
     */
    private boolean productDefineIdSetted = false;

    /**
    * Attribute productDefineId is Null Falg
    */
    private boolean productDefineIdNull = false;
    private long productGlossaryId;

    /**
     * Attribute productGlossaryId Be Seted Falg
     */
    private boolean productGlossaryIdSetted = false;

    /**
    * Attribute productGlossaryId is Null Falg
    */
    private boolean productGlossaryIdNull = false;
    private long relatedProductGlossaryId;

    /**
     * Attribute relatedProductGlossaryId Be Seted Falg
     */
    private boolean relatedProductGlossaryIdSetted = false;

    /**
    * Attribute relatedProductGlossaryId is Null Falg
    */
    private boolean relatedProductGlossaryIdNull = false;
    private String relatedType;

    /**
     * Attribute relatedType Be Seted Falg
     */
    private boolean relatedTypeSetted = false;

    /**
    * Attribute relatedType is Null Falg
    */
    private boolean relatedTypeNull = false;
    private String status;

    /**
     * Attribute status Be Seted Falg
     */
    private boolean statusSetted = false;

    /**
    * Attribute status is Null Falg
    */
    private boolean statusNull = false;
    private String remarks;

    /**
     * Attribute remarks Be Seted Falg
     */
    private boolean remarksSetted = false;

    /**
    * Attribute remarks is Null Falg
    */
    private boolean remarksNull = false;
    private String relatedName;

    /**
     * Attribute relatedName Be Seted Falg
     */
    private boolean relatedNameSetted = false;

    /**
    * Attribute relatedName is Null Falg
    */
    private boolean relatedNameNull = false;
    private String relatedGlossaryCode;

    /**
     * Attribute relatedGlossaryCode Be Seted Falg
     */
    private boolean relatedGlossaryCodeSetted = false;

    /**
    * Attribute relatedGlossaryCode is Null Falg
    */
    private boolean relatedGlossaryCodeNull = false;
    private String relatedGlossaryName;

    /**
     * Attribute relatedGlossaryName Be Seted Falg
     */
    private boolean relatedGlossaryNameSetted = false;

    /**
    * Attribute relatedGlossaryName is Null Falg
    */
    private boolean relatedGlossaryNameNull = false;

    public ProductGlossaryRelate() {
        super();
    }

    /**
         * Get id
         *
         * @return long
         */
    final public long getId() {
        return id;
    }

    /**
     * Set id
     *
     * @param long
     */
    final public void setId(long id) {
        this.id = id;

        this.idSetted = true;

        this.setIdNull(false);
    }

    /**
     * Get id Has Been Setted
     *
     * @return boolean
     */
    final public boolean isIdSetted() {
        return this.idSetted;
    }

    /**
     * Set id Null
     *
     */
    final public void setIdNull() {
        this.idNull = true;
    }

    final public void setIdNull(boolean aNullFlag) {
        this.idNull = aNullFlag;
    }

    final public boolean isIdNull() {
        return this.idNull;
    }

    /**
         * Get productDefineId
         *
         * @return long
         */
    final public long getProductDefineId() {
        return productDefineId;
    }

    /**
     * Set productDefineId
     *
     * @param long
     */
    final public void setProductDefineId(long productDefineId) {
        this.productDefineId = productDefineId;

        this.productDefineIdSetted = true;

        this.setProductDefineIdNull(false);
    }

    /**
     * Get productDefineId Has Been Setted
     *
     * @return boolean
     */
    final public boolean isProductDefineIdSetted() {
        return this.productDefineIdSetted;
    }

    /**
     * Set productDefineId Null
     *
     */
    final public void setProductDefineIdNull() {
        this.productDefineIdNull = true;
    }

    final public void setProductDefineIdNull(boolean aNullFlag) {
        this.productDefineIdNull = aNullFlag;
    }

    final public boolean isProductDefineIdNull() {
        return this.productDefineIdNull;
    }

    /**
         * Get productGlossaryId
         *
         * @return long
         */
    final public long getProductGlossaryId() {
        return productGlossaryId;
    }

    /**
     * Set productGlossaryId
     *
     * @param long
     */
    final public void setProductGlossaryId(long productGlossaryId) {
        this.productGlossaryId = productGlossaryId;

        this.productGlossaryIdSetted = true;

        this.setProductGlossaryIdNull(false);
    }

    /**
     * Get productGlossaryId Has Been Setted
     *
     * @return boolean
     */
    final public boolean isProductGlossaryIdSetted() {
        return this.productGlossaryIdSetted;
    }

    /**
     * Set productGlossaryId Null
     *
     */
    final public void setProductGlossaryIdNull() {
        this.productGlossaryIdNull = true;
    }

    final public void setProductGlossaryIdNull(boolean aNullFlag) {
        this.productGlossaryIdNull = aNullFlag;
    }

    final public boolean isProductGlossaryIdNull() {
        return this.productGlossaryIdNull;
    }

    /**
         * Get relatedProductGlossaryId
         *
         * @return long
         */
    final public long getRelatedProductGlossaryId() {
        return relatedProductGlossaryId;
    }

    /**
     * Set relatedProductGlossaryId
     *
     * @param long
     */
    final public void setRelatedProductGlossaryId(long relatedProductGlossaryId) {
        this.relatedProductGlossaryId = relatedProductGlossaryId;

        this.relatedProductGlossaryIdSetted = true;

        this.setRelatedProductGlossaryIdNull(false);
    }

    /**
     * Get relatedProductGlossaryId Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRelatedProductGlossaryIdSetted() {
        return this.relatedProductGlossaryIdSetted;
    }

    /**
     * Set relatedProductGlossaryId Null
     *
     */
    final public void setRelatedProductGlossaryIdNull() {
        this.relatedProductGlossaryIdNull = true;
    }

    final public void setRelatedProductGlossaryIdNull(boolean aNullFlag) {
        this.relatedProductGlossaryIdNull = aNullFlag;
    }

    final public boolean isRelatedProductGlossaryIdNull() {
        return this.relatedProductGlossaryIdNull;
    }

    /**
         * Get relatedType
         *
         * @return String
         */
    final public String getRelatedType() {
        if (isRelatedTypeNull()) {
            return null;
        } else {
            return StringUtils.trim(relatedType);
        }
    }

    /**
     * Set relatedType
     *
     * @param String
     */
    final public void setRelatedType(String relatedType) {
        this.relatedType = StringUtils.trim(relatedType);

        this.relatedTypeSetted = true;

        this.setRelatedTypeNull(this.relatedType == null);
    }

    /**
     * Get relatedType Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRelatedTypeSetted() {
        return this.relatedTypeSetted;
    }

    /**
     * Set relatedType Null
     *
     */
    final public void setRelatedTypeNull() {
        this.relatedTypeNull = true;
    }

    final public void setRelatedTypeNull(boolean aNullFlag) {
        this.relatedTypeNull = aNullFlag;
    }

    final public boolean isRelatedTypeNull() {
        return this.relatedTypeNull;
    }

    /**
         * Get status
         *
         * @return String
         */
    final public String getStatus() {
        if (isStatusNull()) {
            return null;
        } else {
            return StringUtils.trim(status);
        }
    }

    /**
     * Set status
     *
     * @param String
     */
    final public void setStatus(String status) {
        this.status = StringUtils.trim(status);

        this.statusSetted = true;

        this.setStatusNull(this.status == null);
    }

    /**
     * Get status Has Been Setted
     *
     * @return boolean
     */
    final public boolean isStatusSetted() {
        return this.statusSetted;
    }

    /**
     * Set status Null
     *
     */
    final public void setStatusNull() {
        this.statusNull = true;
    }

    final public void setStatusNull(boolean aNullFlag) {
        this.statusNull = aNullFlag;
    }

    final public boolean isStatusNull() {
        return this.statusNull;
    }

    /**
         * Get remarks
         *
         * @return String
         */
    final public String getRemarks() {
        if (isRemarksNull()) {
            return null;
        } else {
            return StringUtils.trim(remarks);
        }
    }

    /**
     * Set remarks
     *
     * @param String
     */
    final public void setRemarks(String remarks) {
        this.remarks = StringUtils.trim(remarks);

        this.remarksSetted = true;

        this.setRemarksNull(this.remarks == null);
    }

    /**
     * Get remarks Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRemarksSetted() {
        return this.remarksSetted;
    }

    /**
     * Set remarks Null
     *
     */
    final public void setRemarksNull() {
        this.remarksNull = true;
    }

    final public void setRemarksNull(boolean aNullFlag) {
        this.remarksNull = aNullFlag;
    }

    final public boolean isRemarksNull() {
        return this.remarksNull;
    }

    /**
         * Get relatedName
         *
         * @return String
         */
    final public String getRelatedName() {
        if (isRelatedNameNull()) {
            return null;
        } else {
            return StringUtils.trim(relatedName);
        }
    }

    /**
     * Set relatedName
     *
     * @param String
     */
    final public void setRelatedName(String relatedName) {
        this.relatedName = StringUtils.trim(relatedName);

        this.relatedNameSetted = true;

        this.setRelatedNameNull(this.relatedName == null);
    }

    /**
     * Get relatedName Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRelatedNameSetted() {
        return this.relatedNameSetted;
    }

    /**
     * Set relatedName Null
     *
     */
    final public void setRelatedNameNull() {
        this.relatedNameNull = true;
    }

    final public void setRelatedNameNull(boolean aNullFlag) {
        this.relatedNameNull = aNullFlag;
    }

    final public boolean isRelatedNameNull() {
        return this.relatedNameNull;
    }

    /**
         * Get relatedGlossaryCode
         *
         * @return String
         */
    final public String getRelatedGlossaryCode() {
        if (isRelatedGlossaryCodeNull()) {
            return null;
        } else {
            return StringUtils.trim(relatedGlossaryCode);
        }
    }

    /**
     * Set relatedGlossaryCode
     *
     * @param String
     */
    final public void setRelatedGlossaryCode(String relatedGlossaryCode) {
        this.relatedGlossaryCode = StringUtils.trim(relatedGlossaryCode);

        this.relatedGlossaryCodeSetted = true;

        this.setRelatedGlossaryCodeNull(this.relatedGlossaryCode == null);
    }

    /**
     * Get relatedGlossaryCode Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRelatedGlossaryCodeSetted() {
        return this.relatedGlossaryCodeSetted;
    }

    /**
     * Set relatedGlossaryCode Null
     *
     */
    final public void setRelatedGlossaryCodeNull() {
        this.relatedGlossaryCodeNull = true;
    }

    final public void setRelatedGlossaryCodeNull(boolean aNullFlag) {
        this.relatedGlossaryCodeNull = aNullFlag;
    }

    final public boolean isRelatedGlossaryCodeNull() {
        return this.relatedGlossaryCodeNull;
    }

    /**
         * Get relatedGlossaryName
         *
         * @return String
         */
    final public String getRelatedGlossaryName() {
        if (isRelatedGlossaryNameNull()) {
            return null;
        } else {
            return StringUtils.trim(relatedGlossaryName);
        }
    }

    /**
     * Set relatedGlossaryName
     *
     * @param String
     */
    final public void setRelatedGlossaryName(String relatedGlossaryName) {
        this.relatedGlossaryName = StringUtils.trim(relatedGlossaryName);

        this.relatedGlossaryNameSetted = true;

        this.setRelatedGlossaryNameNull(this.relatedGlossaryName == null);
    }

    /**
     * Get relatedGlossaryName Has Been Setted
     *
     * @return boolean
     */
    final public boolean isRelatedGlossaryNameSetted() {
        return this.relatedGlossaryNameSetted;
    }

    /**
     * Set relatedGlossaryName Null
     *
     */
    final public void setRelatedGlossaryNameNull() {
        this.relatedGlossaryNameNull = true;
    }

    final public void setRelatedGlossaryNameNull(boolean aNullFlag) {
        this.relatedGlossaryNameNull = aNullFlag;
    }

    final public boolean isRelatedGlossaryNameNull() {
        return this.relatedGlossaryNameNull;
    }

    public int hashCode() {
        final int prime = 31;
        int result = 1;

        result = (prime * result) + (int) (getId() ^ (getId() >>> 32));

        return result;
    }

    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }

        if ((obj instanceof ProductGlossaryRelate) == false) {
            return false;
        }

        ProductGlossaryRelate other = (ProductGlossaryRelate) obj;

        if (getId() != other.getId()) {
            return false;
        }

        return true;
    }

    public String toString() {
        StringBuffer buffer = new StringBuffer();

        buffer.append("[");

        buffer.append("id=");
        buffer.append(this.id);

        buffer.append("productDefineId=");
        buffer.append(this.productDefineId);

        buffer.append("productGlossaryId=");
        buffer.append(this.productGlossaryId);

        buffer.append("relatedProductGlossaryId=");
        buffer.append(this.relatedProductGlossaryId);

        buffer.append("relatedType=");
        buffer.append(this.relatedType);

        buffer.append("status=");
        buffer.append(this.status);

        buffer.append("remarks=");
        buffer.append(this.remarks);

        buffer.append("relatedGlossaryCode=");
        buffer.append(this.relatedGlossaryCode);

        buffer.append("relatedGlossaryName=");
        buffer.append(this.relatedGlossaryName);

        buffer.append("relatedName=");
        buffer.append(this.relatedName);

        buffer.append("]");

        return buffer.toString();
    }
}
